package com.th.supcom.pds.drugsupply.client.service;

import java.util.List;

import net.carefx.framework.container.client.exception.UiException;

import com.extjs.gxt.ui.client.data.PagingLoadConfig;
import com.extjs.gxt.ui.client.data.PagingLoadResult;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.th.supcom.pds.drugsupply.client.model.PdsPackageInfoModel;

/**
 * PdsPackageMaintain 异步接口.
 * 
 * 药品信息.
 */
public interface PdsPackageMaintainRpcAsync
{
    /** 公司版权信息. */
    public static final String copyright = "Copyright 2014, TH Supcom Corporation";

    /** 提交路径. */
    public static final String SCC_BRANCH = "$URL$";

    /** 提交日期. */
    public static final String SCC_LAST_MODIFICATION_DATE = "$Date$";

    /** 最终修改人员. */
    public static final String SCC_LAST_MODIFIER_NAME = "$Author$";

    /** 最终版本号. */
    public static final String SCC_REVISION = "$Revision$";

    /**
     * 删除药品包装信息
     * 
     * @param serialNOlist add by Zli
     */
    public void deletePackageInfo (List <Long> serialNOlist, AsyncCallback <Void> callback);

    /**
     * 按名字查询信息
     * 
     * @param name
     * @return
     * @throws UiException add by Zli
     */
    public void getPackageInfoByName (String name, AsyncCallback <List <PdsPackageInfoModel>> callback);

    /**
     * 分页查询信息.
     * 
     * @param config
     * @return
     */
    public void getPackageInfoListWithPaging (PagingLoadConfig config, String name, AsyncCallback <PagingLoadResult <PdsPackageInfoModel>> callback);

    /**
     * 修改包装信息
     * 
     * @param modelList
     * @throws UiException add by Zli
     */
    public void modifyPackageInfo (List <PdsPackageInfoModel> modelList, AsyncCallback <Void> callback);
}